As personal computers (PCs), handheld PCs, and other electronic devices running applications have become more sophisticated over the years, the utilities and features available in these applications have also become more sophisticated. These applications, utilities, and features allow a user to interact with the electronic devices by inputting commands, inputting data, and receiving results from the applications and devices, usually through user interfaces. Among the various interfaces available, Graphical User Interfaces (GUIs) and Application Programming Interfaces (APIs) have become very popular for interacting with these electronic devices, as well as viewing and modifying documents contained in the electronic devices.
An example utility common among many applications today, which may be implemented in a GUI or through an API, is a spell checking routine. While spell checking routines historically only appeared in programs such as word processors, such routines are now found in e-mail applications, spreadsheet applications, database applications, Hyper Text Markup Language (HTML) editors, and internet browsers. Spell checking routines, as well as other routines and application features, have matured considerably in the past decade. For example, current spell checking utilities usually suggest multiple spellings for unrecognized words and usually provide support for multiple languages.
Even though these utilities and application routines have matured and are certainly useful, they still lack many benefits when evaluated in terms of user efficiency. Current incarnations of these utilities often require significant wasted effort on the part of a user. Most of the utilities, or functions, in applications often require the user to work with an entire document. However, often times the user may only want to work with a small portion of the document. The amount of time spent working with the remaining portion of the document, instead of only the small portion on which the user desires to work, is wasted time. An example will help explain this efficiency loss.
A person may receive a very long e-mail message containing both information and questions, to which the recipient may need to respond. Instead of typing a standard conversational reply, the recipient may choose to respond to the questions of the e-mail message by typing answers and comments directly below the questions. To call attention to the answers and comments entered into the e-mail message reply, the recipient may format the text of the answers and the comments. For example, the recipient may choose another color for the text or make the text a larger font. Before sending the e-mail to the sender, the recipient may wish to check the spelling of the answers and comments. The recipient may find one spelling error in the answers and comments but find thirty-six errors in the original e-mail message. While the time needed to correct the single error may take five or six seconds, the time needed to choose to ignore the thirty-six errors may take one or two minutes.
Presently, there are no effective and efficient solutions to eliminate this wasted effort. Some users may select individual portions of text, by using a mouse, and spell check the individual portions. However, this method is tedious and cumbersome, especially for lengthy documents. There is therefore a need in the art for more efficient and user-friendly methods, apparatuses, and systems for selective component verification of documents.